\chapter{Preface}

This book will not start with a personal story or some other flowery recollections. Instead, to protect your time, I will lay out precisely what this book is about and who am I to be qualified to write this book. Hopefully, this will help you decide whether reading this book is a good use of your time.

\section*{About this book}

This book is a complete guide to the \CC\,standard algorithms. However, that might not mean much to you, so let me unpack this statement.

This book is a guide, as opposed to a reference, meaning that instead of describing every detail, the book concentrates on examples and pointing out notable, surprising, dangerous or interesting aspects of the different algorithms. Furthermore, unlike a reference, it is supposed to be read, for the most part, like a book in sequential order.

\CC\,already has one canonical reference, the \CC\,standard, and for quick lookup, the \href{https://cppreference.com}{cppreference.com} wiki is a great source.

The "complete" part of the statement refers to the width of coverage. The book covers all algorithms and relevant theory up to the \CC20 standard (the \CC23 standard is not finalized at the time of writing). All information is present only in sufficient depth required by the context. This depth limitation keeps the book's overall size reasonable and within the "guide" style.

\section*{About the author}

I am Šimon Tóth, the sole author of this book. My primary qualification is 20 years of \CC\,experience, with approximately 15 of those years \CC\,being my primary language in professional settings.

My background is HPC, spanning academia, big tech and startup environments. I have architected, built and operated systems of all scales, from single machine hardware supported high-availability to planet-scale services.\footnote{You can check my \href{https://cz.linkedin.com/in/simontoth}{LinkedIn profile} for a detailed view of my past career.}

Throughout my career, my passion has always been teaching and mentoring junior engineers, which is why you are now reading this book.

\section*{Feedback}

Creating free educational content is very much akin to shouting into the void. There are no sales statistics to follow or milestones to hit. Therefore, please let me know if you read this book and find it helpful or hate it. It will inform my future efforts.

\section*{Why cc-by-sa-nc}

This book is licensed CC-BY-SA-NC, which is both an open but, at the same time, minimal license. I aim to allow derivative works (such as translations) but not to permit commercial use, such as using the book as the basis for commercial training or selling printed copies.

Explicitly, any personal use is permitted. For example, you can read, print, or share the book with your friends.

If you want to use this content where you are unsure whether you fit within the Creative Commons commercial definition\footnote{primarily intended for or directed toward commercial advantage or monetary compensation}, feel free to contact me on \href{https://hachyderm.io/@simontoth}{Mastodon}, \href{https://cz.linkedin.com/in/simontoth}{LinkedIn} or by \href{mailto:business@simontoth.eu}{email} (my DMs are always open).

\section*{Book status}

This book is currently content-complete (upto and including \CC20).

To keep up with the changes, visit the hosting repository: \url{https://github.com/HappyCerberus/book-cpp-algorithms}.

\subsection*{Changelog}

\begin{enumerate}
    \item[1.0.1] Small (mostly) formatting changes.
    \item[1.0.0] First complete release.
\end{enumerate}